{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Getting started with MPSlib\n",
    "This a small example of geeting started with MPSlib through an iPython notebook"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "#%matplotlib widget\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import mpslib as mps\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Setup MPSLib"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'n_real': 50,\n",
       " 'rseed': 1,\n",
       " 'n_max_cpdf_count': 1,\n",
       " 'out_folder': '.',\n",
       " 'ti_fnam': 'ti.dat',\n",
       " 'simulation_grid_size': array([80, 50,  1]),\n",
       " 'origin': array([0., 0., 0.]),\n",
       " 'grid_cell_size': array([1, 1, 1]),\n",
       " 'mask_fnam': 'mask.dat',\n",
       " 'hard_data_fnam': 'hard.dat',\n",
       " 'shuffle_simulation_grid': 2,\n",
       " 'entropyfactor_simulation_grid': 4,\n",
       " 'shuffle_ti_grid': 1,\n",
       " 'hard_data_search_radius': 1,\n",
       " 'soft_data_categories': array([0, 1]),\n",
       " 'soft_data_fnam': 'soft.dat',\n",
       " 'n_threads': -1,\n",
       " 'debug_level': -1,\n",
       " 'template_size': array([8, 7, 1]),\n",
       " 'n_multiple_grids': 3,\n",
       " 'n_min_node_count': 0,\n",
       " 'n_cond': 1}"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "O = mps.mpslib(method='mps_snesim_tree',\n",
    "                    verbose_level=-1)\n",
    "O.parameter_filename = 'mps_snesim.txt'\n",
    "O.par['debug_level']=-1\n",
    "O.par['n_cond']=1\n",
    "O.par['n_real']=50\n",
    "O.par['simulation_grid_size']=np.array([80,50,1])\n",
    "\n",
    "O.par"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Choose training image"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "\n",
    "#TI, TI_filename = mps.trainingimages.strebelle(di=2, coarse3d=1)\n",
    "TI, TI_filename = mps.trainingimages.rot90()\n",
    "O.par['ti_fnam']=TI_filename\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7fbf1bb93320>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.imshow(TI[:,:,0])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Run MPSlib"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "parallel: using 50 threads to simulate 50 realizations\n",
      "parallel: with up to 1 relizations per thread\n",
      "parallel: Using 50 of max 52 threads\n",
      "__name__ = mpslib.mpslib\n",
      "Thread:000, nr=1\n",
      "Thread:001, nr=1\n",
      "Thread:002, nr=1\n",
      "Thread:003, nr=1\n",
      "Thread:004, nr=1\n",
      "Thread:005, nr=1\n",
      "Thread:006, nr=1\n",
      "Thread:007, nr=1\n",
      "Thread:008, nr=1\n",
      "Thread:009, nr=1\n",
      "Thread:010, nr=1\n",
      "Thread:011, nr=1\n",
      "Thread:012, nr=1\n",
      "Thread:013, nr=1\n",
      "Thread:014, nr=1\n",
      "Thread:015, nr=1\n",
      "Thread:016, nr=1\n",
      "Thread:017, nr=1\n",
      "Thread:018, nr=1\n",
      "Thread:019, nr=1\n",
      "Thread:020, nr=1\n",
      "Thread:021, nr=1\n",
      "Thread:022, nr=1\n",
      "Thread:023, nr=1\n",
      "Thread:024, nr=1\n",
      "Thread:025, nr=1\n",
      "Thread:026, nr=1\n",
      "Thread:027, nr=1\n",
      "Thread:028, nr=1\n",
      "Thread:029, nr=1\n",
      "Thread:030, nr=1\n",
      "Thread:031, nr=1\n",
      "Thread:032, nr=1\n",
      "Thread:033, nr=1\n",
      "Thread:034, nr=1\n",
      "Thread:035, nr=1\n",
      "Thread:036, nr=1\n",
      "Thread:037, nr=1\n",
      "Thread:038, nr=1\n",
      "Thread:039, nr=1\n",
      "Thread:040, nr=1\n",
      "Thread:041, nr=1\n",
      "Thread:042, nr=1\n",
      "Thread:043, nr=1\n",
      "Thread:044, nr=1\n",
      "Thread:045, nr=1\n",
      "Thread:046, nr=1\n",
      "Thread:047, nr=1\n",
      "Thread:048, nr=1\n",
      "Thread:049, nr=1\n",
      "028:Could read combine gslib output files - perhaps empty output?\n",
      "024:Could read combine gslib output files - perhaps empty output?\n",
      "027:Could read combine gslib output files - perhaps empty output?\n",
      "036:Could read combine gslib output files - perhaps empty output?\n",
      "029:Could read combine gslib output files - perhaps empty output?\n",
      "047:Could read combine gslib output files - perhaps empty output?\n",
      "039:Could read combine gslib output files - perhaps empty output?\n",
      "046:Could read combine gslib output files - perhaps empty output?\n",
      "046:Could not read gslib output file: ti_thread_046.dat_sg_0.gslib\n",
      "047:Could not read gslib output file: ti_thread_047.dat_sg_0.gslib\n",
      "029:Could not read gslib output file: ti_thread_029.dat_sg_0.gslib\n",
      "039:Could not read gslib output file: ti_thread_039.dat_sg_0.gslib\n",
      "036:Could not read gslib output file: ti_thread_036.dat_sg_0.gslib\n",
      "027:Could not read gslib output file: ti_thread_027.dat_sg_0.gslib\n",
      "028:Could not read gslib output file: ti_thread_028.dat_sg_0.gslib\n",
      "024:Could not read gslib output file: ti_thread_024.dat_sg_0.gslib\n",
      "Filename:'./thread020/ti_thread_020.dat_sg_0.gslib', does not exist\n",
      "Filename:'./thread006/ti_thread_006.dat_sg_0.gslib', does not exist\n",
      "Filename:'./thread009/ti_thread_009.dat_sg_0.gslib', does not exist\n",
      "Filename:'./thread017/ti_thread_017.dat_sg_0.gslib', does not exist\n",
      "Filename:'./thread008/ti_thread_008.dat_sg_0.gslib', does not exist\n",
      "Filename:'./thread011/ti_thread_011.dat_sg_0.gslib', does not exist\n",
      "032:Could not read gslib output file: ti_thread_032.dat_sg_0.gslib\n",
      "035:Could not read gslib output file: ti_thread_035.dat_sg_0.gslib\n",
      "043:Could not read gslib output file: ti_thread_043.dat_sg_0.gslib\n",
      "032:Could read combine gslib output files - perhaps empty output?\n",
      "035:Could read combine gslib output files - perhaps empty output?\n",
      "043:Could read combine gslib output files - perhaps empty output?\n",
      "020:Could not read gslib output file: ti_thread_020.dat_sg_0.gslib\n",
      "020:Could read combine gslib output files - perhaps empty output?\n",
      "Filename:'./thread007/ti_thread_007.dat_sg_0.gslib', does not exist\n",
      "Filename:'./thread015/ti_thread_015.dat_sg_0.gslib', does not exist\n",
      "009:Could not read gslib output file: ti_thread_009.dat_sg_0.gslib\n",
      "007:Could not read gslib output file: ti_thread_007.dat_sg_0.gslib\n",
      "007:Could read combine gslib output files - perhaps empty output?\n",
      "Filename:'./thread018/ti_thread_018.dat_sg_0.gslib', does not exist\n",
      "Filename:'./thread014/ti_thread_014.dat_sg_0.gslib', does not exist\n",
      "014:Could not read gslib output file: ti_thread_014.dat_sg_0.gslib\n",
      "Filename:'./thread041/ti_thread_041.dat_sg_0.gslib', does not exist\n",
      "041:Could not read gslib output file: ti_thread_041.dat_sg_0.gslib\n",
      "041:Could read combine gslib output files - perhaps empty output?\n",
      "Filename:'./thread012/ti_thread_012.dat_sg_0.gslib', does not exist\n",
      "Filename:'./thread004/ti_thread_004.dat_sg_0.gslib', does not exist\n",
      "Filename:'./thread016/ti_thread_016.dat_sg_0.gslib', does not exist\n",
      "014:Could read combine gslib output files - perhaps empty output?\n",
      "042:Could read combine gslib output files - perhaps empty output?\n",
      "044:Could read combine gslib output files - perhaps empty output?\n",
      "003:Could not read gslib output file: ti_thread_003.dat_sg_0.gslib\n",
      "003:Could read combine gslib output files - perhaps empty output?\n",
      "Filename:'./thread013/ti_thread_013.dat_sg_0.gslib', does not exist\n",
      "013:Could not read gslib output file: ti_thread_013.dat_sg_0.gslib\n",
      "Filename:'./thread002/ti_thread_002.dat_sg_0.gslib', does not exist\n",
      "002:Could not read gslib output file: ti_thread_002.dat_sg_0.gslib\n",
      "002:Could read combine gslib output files - perhaps empty output?\n",
      "parallel job done. Collecting data from threads\n",
      "parallel: collected 20 realizations\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "[<mpslib.mpslib.mpslib at 0x7fbf108ca8d0>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3e48>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3d68>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922d30>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108cacf8>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3a20>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922c18>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922eb8>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922d68>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108ca860>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108caba8>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922a58>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf1091bd30>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108cae80>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922fd0>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922f60>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922630>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922978>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108ca828>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108cada0>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10914b00>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3c18>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108ca978>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3470>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10914c18>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3f60>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108caa20>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10914a58>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf1091b550>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf1091beb8>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108caeb8>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108caf98>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10914c88>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108caac8>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3da0>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf1091ba58>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf1091be10>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3eb8>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3dd8>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf1091bf60>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3e80>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922828>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922cf8>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf1091bfd0>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf10922e10>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108d3cf8>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf1091bd68>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf1091bc18>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108cac18>,\n",
       " <mpslib.mpslib.mpslib at 0x7fbf108cad68>]"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#O.run()\n",
    "O.run_parallel()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Plot some realizations using matplotlib"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "ename": "IndexError",
     "evalue": "list index out of range",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mIndexError\u001b[0m                                Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-6-c8bf601128b4>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mO\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot_reals\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;32m/mnt/PROGRAMMING/mpslib/scikit-mps/mpslib/mpslib.py\u001b[0m in \u001b[0;36mplot_reals\u001b[0;34m(self, nr, hardcopy, hardcopy_filename, nanval, filternan)\u001b[0m\n\u001b[1;32m    774\u001b[0m             \u001b[0mfig\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0madd_subplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0max1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    775\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0mfilternan\u001b[0m\u001b[0;34m==\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 776\u001b[0;31m                 \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msim\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msim\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m==\u001b[0m\u001b[0mnanval\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mnan\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    777\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    778\u001b[0m             \u001b[0mD\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0msqueeze\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtranspose\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msim\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mIndexError\u001b[0m: list index out of range"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 21 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "O.plot_reals()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Plot some realizations using vista"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "O.plot_reals_3d()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
